/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package genericos;

import java.sql.Date;

/**
 * Clase que permite almacenar valores para cualquier tabla de la base de datos.
 * Permite que sean regisrados los valores asociados a un campo de una tabla para luego ser insertados en la base de datos
 * Tiene 3 tipos de datos y son: enteros, date y String, adicionalmente se requiere el nombre del campo de tabla para realizar la 
 * insercion.
 * Se usa un entero para diferenciar las categorias de dato donde un 1 es un entero. un 2 es una fecha y un 3 es una cadena.
 * @author Fernando Ramírez Martínez <Servicios Disaster Recovery>
 * @version 1.0
 * @see ListaNodos
 * @see Insercion
 */
public class Insernodo {

    private String valors;
    private int valorin;
    private Date valordo;
    private String campo;
    private int cat = 0;
    private Double x;
    /**
     * Constructor para la clase insernodo donde se asigna nombre del campo y un
     * valor asociado
     *
     * @param nombrecampo nombre del campo de tabla
     * @param valor valor entero asociado a la tabla
     */
    public Insernodo(String nombrecampo, int valor) {
        campo = nombrecampo;
        valorin = valor;
        cat = 1;
    }

    /**
     * Constructor para la clase insernodo donde se asigna nombre del campo y un
     * valor asociado
     *
     * @param nombrecampo nombre del campo de tabla
     * @param valor valor date para el campo asociado
     */
    public Insernodo(String nombrecampo, Date valor) {
        campo = nombrecampo;
        valordo = valor;
        cat = 2;
    }

    /**
     * Constructor para la clase insernodo donde se asigna nombre del campo y un
     * valor asociado
     *
     * @param nombrecampo nombre del campo de tabla
     * @param valor valor de la cadena asociada a la tabla.
     */
    public Insernodo(String nombrecampo, String valor) {
        campo = nombrecampo;
        valors = valor;
        cat = 3;
    }
    public Insernodo(String nombrecampo,Double d){
        campo=nombrecampo;
        x=d;
        cat=4;
    }
    /**
     * Metodo obtenedor de una cadena
     *
     * @return cadena string asociada a un campo de tabla
     */
    public String getValors() {
        return valors;
    }

    /**
     * Metodo obtenedor de un entero asociado a un campo de tabla
     *
     * @return el valor entero de el campo de tabla
     */
    public int getValorin() {
        return valorin;
    }

    /**
     * Metodo obtenedor de una fecha asociada a un campo
     *
     * @return fecha asociada al campo de tabla
     */
    public Date getValordo() {
        return valordo;
    }

    /**
     * Metodo obtenedor de una cadena con el nombre del campo de tabla
     *
     * @return el nombre del campo de tabla
     */
    public String getCampo() {
        return campo;
    }
    public Double getX(){
        return x;
    }
    /**
     * Metodo obtenedor de un entero que simboliza una categoria
     *
     * @return el entero de la categoria
     */
    public int getCat() {
        return cat;
    }
}
